package com.zhangln.mountbuzhou.dao;

import com.zhangln.mountbuzhou.core.RegContent;
import com.zhangln.mountbuzhou.entity.TbConnectionLogEntity;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * <p>
 * 客户端在线情况日志表 服务类
 * </p>
 *
 * @author sherry
 * @since 2020-04-27
 */
public interface TbConnectionLogDao extends IService<TbConnectionLogEntity> {

    /**
     * 新增连接记录
     *
     * @param channelId
     */
    void saveConnectionLog(String channelId);

    /**
     * 客户端连接失败
     *
     * @param channelId
     */
    void saveConnectionRefusedLog(String channelId);

    /**
     * 客户端连接注册成功
     *
     * @param channelId
     * @param regContent
     */
    void saveConnectionSuccLog(String channelId, RegContent regContent);

    /**
     * 心跳维持
     * @param channelId
     */
    void savePingLog(String channelId);

    /**
     * HandlerRemoved日志
     * @param channelId
     * @param msg
     */
    void saveHandlerRemovedLog(String channelId, String msg);

    void truncate();
}
